根據需求不同,有不一樣的部署模式,常見的情況如下:
有兩個主要概念貫穿各種部署模式:逐步增加流量 (搭配監控)、回溯 (Rollback)
常見的部署模式如下:
影子模式 (Shadow mode):
人力與機器學習系統同時作業,但機器學習系統的輸出在此階段不作為決策依據。
主要目的為收集更多可提昇模型表現的資料,與比對預測是否準確。
影子模式適合用在已有準確系統 (人工或 ML) 的情況,它能幫助我們有效率地驗證新系統是否足以作為決策依據。
金絲雀模式 (Canary deployment):
最初使用極少部份的流量 (例如 5% 或更少) 啟動系統進行決策,再慢慢增加流量並監測其表現。
就跟採礦時的金絲雀一樣,此模式能提早預警可能出現的錯誤,讓我們可以滾動式提昇對決策的信心,將預測出錯的影響降至最低。
藍綠模式 (Blue green deployment):
讓 Router 將原本送至舊系統 (藍) 的流量一次性的全部導引到新系統 (綠),此模式的優點在於回溯很方便,如果覺得把流量一次全部轉向很可怕也可以先從部份流量開始。
執行各種部署模式皆需要很多軟體工程的配合,而 MLOps 工具可以幫助我們實作這些模式。
要注意部署並不是 0 或 1 的概念,而是根據需求選擇適當的自動化程度進行部署即可:
其中 AI assistance (幫助人類決策,例如標出可能有缺陷的區域) 與 Partial automation (不確定時就轉交給人類決策) 屬於人為監督 (Human in the loop)。
前面提到了第一次部署並不是終點,明天就來聊聊剩下的部分吧。